package com.ce.pms.charge.dao;

import java.util.Date;
import java.util.List;

import com.ce.pms.base.dao.IPmsBaseDao;
import com.ce.pms.charge.model.ChargeInsertLateFeeDetailDO;
import com.ce.pms.charge.model.ChargeUpdateLateFeeDetailDO;
import com.ce.pms.charge.model.LateFeeModeDomain;


public interface ILateFeeCountDao extends IPmsBaseDao<LateFeeModeDomain> {
	/**
	 * 方法描述: 查询系统默认设定的滞纳金模式
	 * @author 胡煦
	 * Create on:2008-9-19
	 * @param
	 * @return
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public LateFeeModeDomain findLateFeeMode();
	/**
	 * 方法描述:查询未生成滞纳金的欠费交易, 按物业收费账户排序
	 * @author 胡煦
	 * Create on:2008-9-19
	 * @param
	 * @return
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public List<ChargeInsertLateFeeDetailDO> queryUnMakeLateFeeList(int pageNo,	int pageSize,Long chargePrecinctId,Long periodId);
	/**
	 * 方法描述: 查询已生成滞纳金的欠费交易, 按物业收费账户排序
	 * @author 胡煦
	 * Create on:2008-9-19
	 * @param
	 * @return
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public List<ChargeUpdateLateFeeDetailDO> queryMakedLateFeeList(int pageNo,	int pageSize,Long chargePrecinctId);
	/**
	 * 方法描述: 查询指定收费区下某个时间所有生产通知单的房间
	 * @author 胡煦
	 * Create on:2008-9-22
	 * @param chargePrecinctId，date
	 * @return List<HouseDomain>
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public List<Long> queryInNoticHouse(Long chargePrecinctId,Date date);
	/**
	 * 方法描述: 批量处理updateDebitTransLis
	 * @author 胡煦
	 * Create on:2008-9-24
	 * @param list
	 * @return boolean
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public boolean batchUpdateDebitTransList(List<Object[]> list);
	/**
	 * 方法描述: 批量处理更新帐户余额为当前金额减去给定金额
	 * @author 胡煦
	 * Create on:2008-9-24
	 * @param list
	 * @return boolean
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public boolean batchUpdateSubAccountBalance(List<Object[]> list);
	/**
	 * 方法描述: 批量插入insertTraRtrList
	 * @author 胡煦
	 * Create on::2008-9-25
	 * @param List<Object[]> list
	 * @return boolean
	 * Edit author:
	 * Edit on:
	 * 修改原因：
	 */
	public boolean batchInsertTraRtrList(List<Object[]> list);
}
